package com.ucode.springboot.starter.fileStorage;

import java.io.Closeable;

/**
 * 文件存储提供者接口
 * @author: liliang
 * @date: 2020年1月12日 下午3:27:16
 */
public interface FsProvider extends Closeable{

    /**
     * 存储源
     * @date 2020年6月10日
     * @return
     */
    public String providerName();
    /**
     * 文件上传
     * @date 2020年6月10日
     * @param object
     * @return
     */
    public UploadResult upload(UploadObject object);
    /**
     * 获取文件下载地址
     * @param fileKey 文件Key（全路径或者fileKey）
     * @return
     */
    public String getDownloadUrl(String fileKey);
    /**
     * 下载文件到本地
     * @date 2020年6月10日
     * @param fileKey
     * @param localDir 本地目录
     * @return
     */
    public String downloadLocal(String fileKey,String localDir);
    /**
     * 删除图片
     * @author liliang
     * @date 2020年1月12日
     * @param fileKey 文件Key（全路径或者fileKey）
     * @return
     */
    public boolean delete(String fileKey);
    
}
